package com.inforich.company.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.inforich.common.annotation.Excel;
import com.inforich.common.core.domain.BaseParamEntity;
import com.inforich.common.mybatis.Location;
import com.inforich.common.mybatis.LocationHandler;
import java.util.Date;
import javax.validation.constraints.Size;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 清运公司对象 br_transport_company
 *
 * @author hjm
 * @date 2022-10-23
 */
@Data
@EqualsAndHashCode()
@Accessors(chain = true)
@TableName(value = "br_transport_company", autoResultMap = true)
public class TransportCompany extends BaseParamEntity {

  private static final long serialVersionUID = 1L;

  /**
   * 主键
   */
  @TableId(type = IdType.ASSIGN_UUID)
  private String id;

  /**
   * 三证合一码
   */
  @Excel(name = "三证合一码")
  @Size(max = 255)
  private String socialCreditCode;

  /**
   * 公司名称
   */
  @Excel(name = "公司名称")
  @TableField("name_")
  @Size(max = 255)
  private String name;

  /**
   * 所属行政区域( 地区 )
   */
  private String areaId;
  @Excel(name = "所属行政区域")
  @TableField(exist = false)
  private String areaName;

  /**
   * 联系人姓名
   */
  @Excel(name = "联系人姓名")
  private String contactName;

  /**
   * 手机号
   */
  @Excel(name = "手机号")
  private String contactPhone;

  /**
   * 启用
   */
  @Excel(name = "启用", dictType = "sys_valid")
  private Integer valid;

  /**
   * 公司地址
   */
  @Excel(name = "公司地址")
  @Size(max = 200)
  private String address;

  /**
   * 创建时间
   */
  @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd")
  private Date createdDate;

  /**
   * 修改时间
   */
  @Excel(name = "修改时间", dateFormat = "yyyy-MM-dd")
  private Date modifiedDate;

  /**
   * 定位
   */
  @TableField(typeHandler = LocationHandler.class)
  private Location location;

  /**
   * 营业执照图片( 文件 )
   */
  private String imageId;

  /**
   * 准运证启始时间
   */
  @Excel(name = "准运证启始时间", dateFormat = "yyyy-MM-dd")
  private Date transportPermitStartDate;

  /**
   * 准运证结束时间
   */
  @Excel(name = "准运证结束时间", dateFormat = "yyyy-MM-dd")
  private Date transportPermitEndDate;

  /**
   * 准运证图片
   */
  private String transportPermitImage;

  @Excel(name = "公司管理员")
  @TableField(exist = false)
  private String transportCompanyManageName;

}